Contents

AccuSet (TM) 2.5b

Date/Time Synchronization Utility

Copyright (c) 1994, Scott D. Kister,

All Rights Reserved

Topics:

Registration

Upgrade Policy

Introduction

What's New?

Getting Started

Synchronizing the Date/Time

Configuring AccuSet

International Calling

Synchronization Log

Error Compensation

Startup Parameters

Disclaimer

Program Requirements

Common Problems and Solutions

Obtaining Support

Planned Future Enhancements


Introduction

AccuSet was developed to provide users of the Microsoft Windows environment with a solution for accurately setting and maintaining their computer's date and time.  AccuSet provides this service by synchronizing your system's internal clock with the atomic clock at either the National Institute of Standards & Technology (NIST) in Boulder, Colorado, the United States Naval Observatory (USNO) in Washington, D.C., Telecom Australia, the Swedish National Time Service (Sweden), the National Electrotechnical Institute (Italy) or the Technical University of Graz (Austria).

AccuSet Features:

Offers the most accurate synchronization possible with either the NIST, USNO, Sweden, Italy, Austria or Australian atomic clocks.

Determines the accuracy of your PC's internal clock.  AccuSet can also make corrections to the date and time once the internal clock's accuracy has been determined.

Displays the estimated correct time, based on the internal clock's rated accuracy.

Supports the international date/time settings as defined in the Windows Control Panel.

Commercial-quality, intuitive interface.  Supports a user-selectable digital or text interface.

Easy to use and configure - with automatic modem detection.

Supports call logging.  Any adjustment AccuSet makes to the internal clock is recorded, in detail, to a log file.

Works with any speed modem using the AT command set.

Supports the startup parameters (/AUTOSYNC) and (/AUTOADJUST) which will cause AccuSet to automatically adjust the time by either synchronizing with the desired atomic clock or by adjusting the clock based on its rated accuracy and then self-terminate.

Automatic disconnection if the selected service is unavailable.

Call waiting can be disabled during the synchronization process.

Users can choose between using the default generic or a user-defined modem initialization string.  Hang-up strings are also user-configurable.

Displays the date and time of the last synchronization.

Can now be registered via the CompuServe Software Registration Forum!  AccuSet's registration ID number is 2407.

Extremely low cost!


Getting Started

The following steps will provide you with the necessary information to get started quickly with AccuSet...

Step One:

CONFIGURE THE PROGRAM.  This operation should be performed the first time you run AccuSet.  Ensure that you specify the following information:

The communications port to which your modem is attached (select Auto-Detect Port to have AccuSet determine the port number to which your modem is attached)

The service you wish to call (NIST, USNO, Italy, Austria, Sweden or Australia).

The prefix of the telephone number is correct for the selected time service.

The time zone in which you live.

And whether or not Daylight Savings Time is in effect for your time zone.

AccuSet will remember your configuration settings for future use.

Step Two:

SYNCHRONIZE THE CLOCK.  Click the Synchronize Clock button, sit back and let AccuSet synchronize your clock.

If you receive an error message informing you of trouble initializing the COM port, check for (and if necessary, correct) the following conditions:

The serial port to which the modem is attached is in use by another application.

The wrong COM port was selected.

Your modem is either not connected or turned on.

If you are using a high-speed modem and AccuSet simply times out without making a synchronization, consult your modem reference manual for the necessary commands to force a 1200 BPS connection.  You can then select to use a user-defined modem in the Configuration window and enter a custom initialization string with the necessary commands.

Refer to the section, Obtaining Support, if you cannot perform a successful synchronization.


Registration

Registering AccuSet

AccuSet is not public domain software, nor is it free software.  The use of AccuSet is subject to the following terms and conditions:  Non-licensed users are granted a limited license to use AccuSet on a 21-day trial basis for the purpose of determining whether AccuSet is suitable for their needs.  The use of AccuSet, except for an initial 21-day trial, requires registration.  The use of unlicensed copy(ies) of AccuSet by any person or business is strictly prohibited.  Registration entitles you to use AccuSet.  The author will provide you with the access code necessary to personalize your copy of the program and (if you desire) will mail you a registration confirmation notice to prove to your corporate auditors that the software has been legally registered.

The access code you receive will be valid for both the version you registered and the next major version which is released.  So if you registered version 2.0, your access code can be used to register all versions up to and including 3.X (free of charge).

AccuSet can now be registered in two ways:

Via the CompuServe Software Registration Forum (GO SWREG).  AccuSet's software registration ID number is 2407.  This is the easiest (and most convenient) registration method.  As soon as I receive notification of your registration, I will immediately send you your access code via e-mail.

OR:

Send $10.00 US. currency to:

Scott D. Kister

321D West Shady Lane

Enola, PA  17025-2262

CASH, CHECK OR MONEY ORDERS ONLY.  Residents of Pennsylvania add 6% sales tax ($10.60 in total).


Obtaining Support

If you should encounter difficulties with AccuSet, proceed to Common Problems and Solutions section of this help file.  If you can not resolve the problem on your own, you can obtain support for this program by writing to me at the following address:

Scott D. Kister

Retsik Software

321D West Shady Lane

Enola, PA  17025-2262

If the need for support must be obtained in a more timely fashion, I can be reached via CompuServe @ 70254, 2017.


Disclaimer

The author does not warrant that the AccuSet program will meet your requirements or that the operation of the software will be uninterrupted or error-free.  Nor does the author offer any warranties or guarantees of any kind.  Your are free to use AccuSet in any way you see fit, but at your own risk.

The author is not responsible for any problems or damaged caused by the software or that may result from using the software; whether it is licensed or not.  This includes, but is not limited to, computer hardware, computer software, operating systems and any computer or computing accessories.  End user agrees to hold the author and/or any persons associated with the creation of this software harmless for any problems arising from the use of this software.


Planned Future Enhancements

AccuSet, like any other software program, is in a continual state of growth and enhancement.  Although it has satisfied my initial needs, I (like everybody else) want more.

After using (and hopefully registering) this program, you'll certainly have some ideas on how to improve upon it.  I'm very interested in hearing them!  Each version of AccuSet has been shaped by its users - if there's something you want, I'd like to know!

In future versions of the program I plan to introduce the following features:

- Enhanced modem problem detection

- Integration into the Windows Control Panel

- Enhanced help system

- Implementation of any user suggestions.

Please address any correspondence to:

Scott D. Kister

Retsik Software

321D West Shady Lane

Enola, PA  17025-2262

or on CompuServe:  70254, 2017

Thanks in advance for any feedback you may have!


AccuSet Configuration

When you select Configure... from the main window, the configuration dialog box will be displayed.  This section is used to configure the AccuSet program.  The following is an explanation of each available option:

SERVICE TO CALL:

Select either the National Institute of Standards and Technology (NIST), United States Naval Observatory (USNO), Italy, Sweden, Austria or Australian time service.

TELEPHONE NUMBERS:

When you specify a time service, its telephone number will appear in this field.  It is only necessary to alter these numbers for the following reasons:

In the event your telephone system requires connecting to outside line (e.g.: WATTS).  If so, change the first character "1" to whatever numbers you have to dial to get access to an outside line.

In the event you need to dial internationally to access a foreign time service.  See International Calling.

YOUR TIME ZONE:

Select the time zone in which you reside.  AccuSet receives the date/time stamp from the atomic clocks in Greenwich Mean Time.  Adjustments are then made to accurately reflect the correct time for your time zone.

NOTE:

The Telecom Australia (Adelaide and Darwin branches only) report Greenwich Mean Time minus thirty minutes.  Only use these two services if you are located in this area.

USE DAYLIGHT SAVINGS TIME:

If the time zone in which you reside is currently utilizing daylight savings time, check this box.

DISPLAY TYPE:

Select the type of display you prefer.

SECONDS UNTIL AUTO-TIMEOUT:

The value reflects the number of seconds AccuSet will wait before disconnecting the call.  If AccuSet automatically disconnects the call before the synchronization process has completed, increase this value.

CALL WAITING:

If you wish to disable call waiting during the synchronization process, select this option.  You will also be given the option of modifying the dialing command which is used to disable call waiting.

COMMUNICATIONS PORT:

Specify the COM port to which your modem is attached.  AccuSet will inform you if you make the wrong selection, or if it encounters difficulty during initialization.

If you desire to have AccuSet determine the port to which your modem is attached, select Auto-Detect Port.  If an active modem is detected, AccuSet will automatically make the correct port choice.

BAUD RATE:

The NIST supports connections at either 300 or 1200 baud.  The USNO only supports 1200 baud connections.

As of the time AccuSet was released, the atomic clock modems will only support connection speeds at 1200 BPS (the NIST can also connect at 300 BPS).

DIALING METHOD:

If your telephone service does not support tone dialing capabilities, select pulse.

MODEM INITIALIZATION:

You can choose to either use AccuSet's default generic modem initialization string, or you can enter one of your own.  The generic initialization string works with most Hayes-compatible modems.  If you are not encountering difficulties, use the generic initialization string.

If AccuSet times out before a synchronization occurs, try using the alternate initialization string; if that does not work, consult your modem reference manual or contact the author for further assistance.

SILENCE MODEM DURING CALL:

If you do not wish to hear the modem during the call, check this box.  This option is only available if you selected Use Generic Modem Initialization String in the Modem Initialization section.

ALTERNATE MODEM INITIALIZATION STRING:

If you selected to use an alternate modem initialization string in the Modem Initialization section (possibly because your modem was incompatible with AccuSet's default initialization string), enter the command here.  Example:  AT Q0\N1

HANG-UP COMMAND:

If the default modem hang-up command "~~~+++~~~ATH0", does not cause your modem to hang up the telephone, consult your modem's reference manual and insert the necessary command.


Program Requirements

The following list displays the required hardware and software necessary to use AccuSet:

- Microsoft Windows 3.0/3.10/3.11

- Hayes-Compatible Modem

- Visual Basic Runtime (VBRUN300.DLL)

The Visual Basic runtime module is not included in this archive due to its size.  It can be downloaded from CompuServe or most any local BBS.  Once obtained, VBRUN300.DLL should be installed in the \WINDOWS\SYSTEM subdirectory.


Synchronizing Date/Time

Synchronizing the Date/Time

Once AccuSet has been properly configured, synchronizing your computer's date and time is very simple.

Simply click on the Synchronize Clock button:

in order to start the dialing process.

If the program has been configured correctly, the modem will dial the service you specified in the configuration section.  Once connected, your internal clock will then be synchronized to atomic precision.

After the synchronization process is complete, AccuSet will automatically terminate the call.

If at any time during the synchronization process you wish to abort, simply click on the ABORT button.

After the second synchronization is made, AccuSet will have the necessary information to calculate the number of seconds (on average) your computer has either lost or gained per day since the last synchronization.


What's New...

New/Modified Since Version 2.5A:

AccuSet now handles all serial communications via Windows API calls.  Some users reported that their machines locked up when the modem would disconnect.  The problem was traced to difficulties with the MSCOMM.VBX communications control.  The MSCOMM.VBX file is no  longer needed by or included with AccuSet.

Corrected problems with the international date/time support.

AccuSet can now function with all high resolution/high color displays.  Some video drivers would previously report a GPF when attempting to load AccuSet.

The /AutoAdjustQuiet startup option has been corrected to not display any messages during automated program operation.

New/Modified Since Version 2.5:

Corrected problems with the international date/time support!

Corrected the methodology used to calculate the internal clock's rated accuracy.  AccuSet now takes into account error compensation adjustments when determining accuracy for more precise calculations.

Improved AccuSet's modem initialization.

Added an alternate initialization string (which can still be changed) for users of high-speed modems whose modems are incompatible with AccuSet's default modem initialization commands.

New/modified since version 2.0:

Added direct support for the following time services:

Sweden - Swedish National Time Service

Italy - National Electrotechnical Institute

Austria - Technical University of Graz

Australia - Telecom Australia (Adelaide*, Brisbane, Darwin* and Hobart)

These Australian time services report Greenwich Mean Time minus thirty minutes.  Only use these two services if you live in this time zone.

Added support for automatic modem detection.  AccuSet can now search for and detect an active modem.  AccuSet will then make the necessary changes to the configuration.

Now calculates and displays the estimated date/time (based on the calculated internal clock error rate).

Digital time readouts now correctly obey the 12/24 format as defined in the Windows Control Panel.

Added a new startup parameter (/autoadjustquiet).  This option functions identically to the /autoadjust parameter, except that it suppresses all messages.

Improved the date/time stamp processing efficiency for even more accurate and reliable synchronizations.

Added internal code to calculate time differentials.  Therefore, the MSAFINX.DLL file is no longer necessary.

Corrected an anomaly which caused the AccuSet log file to be placed in a directory other than the one from which AccuSet was started.  Previously, the log file would be placed in the currently active directory - which would cause problems if another program changed it after AccuSet was started.

Can be registered via the CompuServe Software Registration Forum!  AccuSet's registration ID number is 2407.  (NOTE:  Version 2.5 is a FREE upgrade to registered version 2.0 & 1.0 users.  Version 1.0 and 2.0 access codes can be used to register version 2.5).

New/modified since version 1.0:

Now supports the selection of an all-text or digital interface.

Added international date and time support.  AccuSet now displays and handles the date in the manner specified in the Windows Control Panel.

Added the ability to correct the system date/time based on a previously-calculated error rate without calling an outside service.  This function is also included as a startup parameter (/AUTOADJUST) which automates the correction process.

Now supports a startup parameter (/AUTOSYNC) which causes AccuSet to automatically synchronize the internal clock with the selected service and then terminate upon successful synchronization.

Now supports a user-configurable delay until auto-abort (especially useful for international callers).

AccuSet can now optionally disable call waiting.

Added support for user-defined modem initialization strings.  The user can now either use the default AccuSet modem initialization method or can enter their own (for modems which have difficulty connecting with slower modems).

Added support for user-definable modem hang-up strings.

Added support for call logging.  Users can now view the date, time, calculated internal clock accuracy and service called for each synchronization that occurred.

Corrected a problem which would not allow AccuSet to synchronize with the NIST at 300 BPS.

Added support for user-configurable modem hang-up commands.  Some users with 2400 BPS and non-standard modems reported difficulty using the default hang-up command.

If you have any suggestions for future enhancements, I would very much appreciate hearing them!


Synchronization Log

When you select Synchronization Log... from the main program window, a screen similar to the following will be displayed:

Each adjustment (includes synchronizations with an external time service and adjustments made to compensate for the internal clock's error rate) AccuSet made to the internal clock is displayed,  The entries are sorted by the date and time each adjustment occurred.  The following information is displayed:

DATE:

The date the synchronization/adjustment occurred.

TIME:

The time the synchronization/adjustment occurred.

SERVICE:

The service which was used to perform the synchronization.  If AccuSet performed a correction to the system clock based on the internal clock's error rate, this field will contain "ACCUSET".

ACCURACY:

The internal clock's rated accuracy (calculated based on the time which was lost/gained since the last synchronization occurred).  If AccuSet was used to perform a correction to the system's time, the most-recently calculated accuracy (obtained from the last synchronization with an atomic clock) is entered here.

If you wish to purge the contents of the synchronization log, select the Clear Log button.  Once the log records have been removed, they cannot be recovered.


Compensating for Internal Clock Error Rate

Once the internal clock's accuracy has been determined, AccuSet can correct the system time to compensate for the amount of time it loses or gains - without making a telephone call!.

AccuSet must first determine your internal clock's error rate (accuracy).  This procedure is performed as follows:

After AccuSet has performed two successful synchronizations with an external time service (such as the NIST or USNO), it knows two points in time where your clock's time was accurate.

After the second synchronization occurs, AccuSet computes the amount of time which was lost or gained by the internal clock since the first synchronization was performed.

AccuSet will then calculate the amount of time which has elapsed between the two synchronizations.  The accuracy is then calculated by dividing the amount of time which was lost or gained by the amount of time which has elapsed between the two synchronizations.  This result is then converted to seconds per day.

NOTE:

Ideally, the accuracy of your internal clock is best determined when the two synchronizations occur at least one day apart.  This will give your internal clock the necessary time to show its "true colors."

With this information, AccuSet can make adjustments to your internal clock which correct for its error rate.  This process can be initiated in either of two ways:

By selecting Error Compensation... in the main program window

or

During program startup, using the /AUTOADJUST parameter.


Startup Parameters

AccuSet provides the ability to automate the following functions through startup parameters:

Synchronizing the clock

Adjusting the system time, based upon the internal clock's calculated error rate (accuracy).

Startup Parameters:

/AUTOSYNC

Causes AccuSet to synchronize your clock with the default time service and, upon a successful synchronization, self-terminate.

If the synchronization was unsuccessful (e.g.: busy signal, modem difficulties, etc.), AccuSet inform you of the problem and wait for your response.

/AUTOADJUST

Causes AccuSet to correct the system time, based upon its calculated accuracy, and then self-terminate.

If the operation was unsuccessful (e.g.: accuracy has not yet been determined, no adjustments were necessary, etc.), AccuSet inform you of the problem and wait for your response.

/AUTOADJUSTQUIET

Same as the /AUTOADJUST parameter, except that all messages are suppressed.

You can use these startup parameters in conjunction with a Windows scheduling program to automatically synchronize (or adjust) your system's time on a scheduled basis.  Simply include the desired startup parameter after the command you use to start AccuSet:

Examples:

To have AccuSet start and automatically synchronize the internal clock with the selected service and then self-terminate:

C:\ACCUSET\ACCUSET.EXE /AUTOSYNC

To have AccuSet start and automatically adjust the internal clock to compensate for its calculated error rate and then self-terminate:

C:\ACCUSET\ACCUSET.EXE /AUTOADJUST


synchronize

To match the date and time of the PC's internal clock with an outside source (i.e., the atomic clocks located at either the USNO, NIST, Italy, Austria, Sweden or Australia) via modem.


USNO

The United States Naval Observatory atomic clock located in Washington, D.C.  This service has less phone lines than the NIST and is generally quite busy.  Modem connections can only be made at 1200 baud.


NIST

The National Institute of Standards and Technology atomic clock located in Boulder, CO.  This service has more available phone lines than the USNO and is generally the preferred service to use.  Modem connections can be made at either 1200 or 300 baud.


daylight savings time (DST)

The time observed when clocks and other timepieces are set ahead, usually by one hour, so that the sun will rise and set later in the day.  DST conserves lighting power and provides more usable daylight hours for afternoon and evening activities.  First adopted during World War I by the U.S. and other countries, DST in the U.S. currently extends from the first Sunday in April to the last Sunday in October.


accuracy

The calculated error rate of your computer's internal clock, measured in the number of seconds it loses (or gains) per day.

AccuSet can calculate your clock's accuracy after two successful synchronizations have occurred.


Upgrade Policy

AccuSet Upgrade Policy

When you register AccuSet, you will receive an access code for the most current version of the program.  This access code can also be used to register the next major version of the program at no further cost to you.

Future versions of the program (beyond your free upgrade) will require you to obtain an upgraded registration code.  The cost of which will be $5 in U.S. Currency.


International Calling

AccuSet now has the ability to synchronize your PC's internal clock with time services spanning three continents.  This ability also introduces the inherent complexities of international dialing.

Using AccuSet to synchronize with foreign time services from the United States:

To enable AccuSet to dial a remote service from the United States, you must modify the phone number for each foreign service in the following manner:

European Services:

Insert the international access code (011) and remove the plus sign (+) from the telephone number:

Sweden - 011 468 7410809

Italy - 011 39 113487892

Austria - 011 43 316472366

Australian Services:

Insert the international access code (011), the country code for Australia (61) and remove the zeroes from the suffix of the phone number.

Adelaide - 011 61 8 410 0143*

Brisbane - 011 61 7 221 7033

Darwin - 011 61 89 41 3423*

Hobart - 011 61 2 24 1905

* These time services report 30 minutes behind Greenwich Mean Time and should not be used when calling from the United States.

Using AccuSet to synchronize with foreign time services from outside the United States:

Depending on your physical location, your telephone service may have special requirements for calling certain countries.  Consult your operator for assistance.

Please note that the European time services have a suffix for the country/city codes which may need to be removed to enable local calling access.


Common Problems and Solutions

The following is a list of common problems and their solutions.  If you cannot resolve the problem on your own, proceed to the obtaining technical support section of this help file.

When starting AccuSet, Windows reports that a file is missing or could not be located.

If the file which is reported missing is the VBRUN300.DLL, this file must be located in the \WINDOWS\SYSTEM subdirectory of your hard drive.  The Visual Basic (version 3) runtime dynamic link library file can be obtained via CompuServe or most local BBS's.

If the file which is reported missing is anything other than VBRUN300.DLL, one of AccuSet's support files has been accidentally deleted.  Obtain the original AccuSet archive file and extract the files into your AccuSet subdirectory.

Difficulties are encountered after dialing has completed:

The modems connect (screeching sound, followed by silence), but the countdown delay is reached without a successful synchronization.  There are many possible causes for this type of problem.  The time service could be busy, or your modem was unable to properly "handshake" with the time service modem.  Try selecting USE ALTERNATE INITIALIZATION STRING and try AT Q0\N1 as the alternate initialization string.  If the same problem occurs, contact the author or consult your modem reference manual for the necessary commands to disable error correction and data compression.

This is perhaps the most common first-time error, because there are a variety of likely causes:  (To assist in determining the cause of the problem, make sure that SILENCE MODEM has not been selected in the configuration dialog.  This will enable your to hear the progress of the connection)

Likely causes:

The phone number (or dialing prefix) is incorrect.  Select RESTORE DEFAULTS from the configuration dialog.  Ensure that the time zone, daylight savings time and COM port options are properly configured.  Edit the phone number of the service to include any necessary dialing prefix (such as 8 for WATTS).  If calling to a time service located in another country, refer to the International Calling help topic.

An improper COM port was selected in the configuration section.  Select the configuration dialog and choose AUTO-DETECT PORT.  AccuSet will then determine the proper communications port to which your modem is attached.

After performing a synchronization, the time is incorrect.

This is most-likely the result of an improperly configured time zone.  Most time services report time in UTC (Universal Time Coordinated) format.  This is the local time for Greenwich, England.  AccuSet automatically converts this time to that which is appropriate for your time zone.  Depending on your physical location, ensure that the proper time zone has been selected.  Another problem may be caused by Daylight Savings Time.  Some countries, including the United States, move their clocks forward one hour in the summer months.  If your area is currently using Daylight Savings Time, ensure that this option is checked.

After upgrading from version 1.0, the Last Synchronization Date appears scrambled.

This problem is a result of an incompatibility between version 1.0 and 2.x initialization files, due to the addition of international date/time support.  It can be resolved by either performing another synchronization or by deleting the ACCUSET.INI file.  If ACCUSET.INI is removed, you will have to re-configure AccuSet.

When AccuSet is started, Windows reports a General Protection Fault in XXXXXX.DRV.

This is caused by an incompatibility between graphical Visual Basic programs and your video driver.  To correct this type of problem, contact your video board manufacturer for the latest video driver.  You may also wish to obtain the latest VBRUN300.DLL (dated 12/93) from CompuServe, the Microsoft Download Service or a local BBS.  Another temporary solution is to use the generic Windows VGA driver included with Microsoft Windows.

The modem will not pick up the phone.

This may be caused by many factors (like a modem which is not turned on).  Other factors which may cause this problem are:  Improper communications port selection (select CONFIGURE and use AccuSet's AUTO-DETECT PORT feature) or an incompatibility with AccuSet's modem initialization string.  If the problem is being caused by an initialization string incompatibility, try the following:  Select USE ALTERNATE INITIALIZATION STRING from the configuration dialog.  Do not enter any initialization codes.  Next, reset the modem (power off the modem, if external; if internal, power down your machine and restart).